<!---- Creator: Eoly -->
<!---- On 2017/1/10 -->
<!---- Call https://palerock.cn -->

<!--
    获取一个团详细信息API：
    method:GET
    url:'http(s)://*.*/group/find-groups'

    请求头:
    无要求

    params:
    {                           // 发送params参数（不附加参数即为查找所有）
        groupId:                // 你想获得的团的团id
    }
    返回：
    {
        dataList:       // 返回的团数据列表
            {
                groupAliveHours:            // 团存活周期（小时）
                groupGoodType:              // 团类型id
                groupId:                    // 团id
                groupImgs:                  // 团封面图片（字符串）
                                               需要转化为数组后使用
                groupInitiatorId:           // 团发起者id
                groupNowNumber:             // 当前参团人数
                groupPostage:               // 团商品邮费
                groupPrice:                 // 团商品单价
                groupPriceOriginal:         // 团商品原价
                groupSynopsis:              // 团简介
                groupDetail:                // 团详情
                groupInitTime:              // 发团时间（时间戳）
                groupFormat :               // 团规格 json字符串
                                               需转化为js对象后使用
                groupTargetNumber:          // 团目标人数
                groupTitle:                 // 团标题
                groupStatus:                // 团状态
                                                -1.审核中
                                                0.拼团中
                                                1.拼团成功
                                                2.拼团失败

                groupInitiator:             // 团发起者
                    {
                        userAvatar          // 用户头像
                        userId              // 用户id
                        userPhoneNumber     // 用户电话号
                        userPower           // 用户权限
                                                1.普通会员
                                                2.VIP
                                                3.管理员
                                                0.不能发团'
                        userSex             // 用户性别
                                                0.男
                                                1.女
                        userStatus          // 用户状态
                    }
            }


        error:      // '0'则为操作成功

        mes:        // 操作后返回的信息
    }
-->

<!--
    参团功能API：
    method:POST
    url:'http(s)://*.*/h5_back/user/group/join-group'

    请求头:
    Authorization:'Bearer '+token 密文记录

    params:
    {                           // 发送json参数
        groupId                 // 欲参加团的团id
        addressId               // 参团后生成的订单的订单预留地址
    }
    返回：
    {
        data:       //返回生成后的订单信息
        {
            orderId //生成订单的订单号
        }

        error:      // '0'则为操作成功

        mes:        // 操作后返回的信息
    }
-->

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
    <title>AngularTest</title>
    <style>
        * {
            padding: 0;
            margin: 0;
            /*border: 0;*/
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
        }
    </style>
    <script src="../angular.js"></script>
    <script>

       var net = 'https://palerock.cn/h5_back';

        var app = angular.module('app', []);


        app.controller('info', function ($scope, $http) {

            //声明参数
            $scope.paramGet = {};
            $scope.paramJoin = {};

            //声明获取的团对象
            $scope.group = {};

            //声明地址数组
            $scope.addresses = [];

            //获取在列表页储存的团id
            $scope.getGroupById = function () {
                $scope.paramGet.groupId = sessionStorage.getItem('ptsc_groupId');

                if (!$scope.paramGet.groupId){
                    alert("未指定团信息");
                    location.href = '所有团信息获取.html';
                    return;
                }

                $http(
                        {
                            method: 'get',
                            params: $scope.paramGet,
                            url: net + "/group/find-group"
                        }
                ).then(
                        //获取成功
                        function (res) {

                            if(!res.data.error) {

                                console.log('获取成功');
                                console.log(res);

                                //暂时储存获取的对象
                                var group = res.data.data;

                                //转化团封面图片为可识别的url数组
                                //声明一个imgSrc接收转化为数组的图片地址
                                group.imgSrc = eval(res.data.data.groupImgs);
                                for (var i = 0; i < group.imgSrc.length; i++)
                                        //遍历图片地址并加上服务器的url
                                    group.imgSrc[i] = net + '/resources/img/' + group.imgSrc[i];

                                //转化团规格为可识别的对象
                                group.format = eval('(' + res.data.data.groupFormat + ')');

                                //将group在$scope中绑定
                                $scope.group = group;
                            }else{
                                alert("错误代码:"+res.data.error+","+res.data.mes)
                            }

                        },
                        //获取失败
                        function (res) {
                            alert('网络或设置错误');
                        },
                        //获取中
                        function (res) {
                            console.log(res);
                        }
                )
            };

            //获取用户地址列表
            $scope.getAddresses = function(){
                //读取本地缓存
                var token = localStorage.getItem("token");
                if(token){
                    $http({
                        method: 'get',
                        url: net + "/user/show-address",
                        headers : {'Authorization' : 'Bearer ' + token}
                    }).then(function(res){
                        console.log(res);
                        if(!res.data.error){
                            $scope.addresses = res.data.dataList;
                        }else{
                            alert("错误代码:"+res.data.error+","+res.data.mes)
                        }
                    },function(){
                        alert('网络或设置错误');
                    })
                }
            };

            //参加团
            $scope.joinGroup = function(){

                //读取本地缓存
                var token = localStorage.getItem("token");

                if (!token) {
                    alert("您还没有登录");
                    location.href = "登陆简单演示.html";
                }

                if($scope.paramGet.groupId==null) {
                    return;
                }

                $scope.paramJoin.groupId = $scope.group.groupId;

                $http(
                        {
                            method: 'post',
                            params: $scope.paramJoin,
                            url: net + "/user/group/join-group",
                            headers : {'Authorization' : 'Bearer ' + token}
                        }
                ).then(
                        function (res) {

                            if(!res.data.error) {

                                alert(res.data.mes);
                                console.log(res);
                                var preOrder = JSON.stringify(res.data.data);
                                sessionStorage.setItem('pre_order',preOrder);
                                location.href = '订单支付页面演示.html';

                            }else{
                                alert("错误代码:"+res.data.error+","+res.data.mes)
                            }

                        },
                        //获取失败
                        function (res) {
                            alert('网络或设置错误');
                        },
                        //获取中
                        function (res) {
                            console.log(res);
                        }
                )
            };


            $scope.logout = function () {
                localStorage.removeItem("token");
                alert("您已注销成功");
                location.reload();
            };
        });
    </script>
</head>
<body ng-app="app">
<div ng-controller="info" ng-init="getGroupById();getAddresses();">
    <fieldset>
        <legend align="center">团信息</legend>
        <ul>
            <li>封面图片</li>
            <li ng-repeat="src in group.imgSrc">
                <img ng-src="{{src}}" alt="" width="100"/>
            </li>
            <li>团id：{{group.groupId}}</li>
            <li>团标题：{{group.groupTitle}}</li>
            <li>团简介：{{group.groupSynopsis}}</li>
            <li>团规格：
                <ul>
                    <li ng-repeat="(formatName, formatValue) in group.format">&nbsp;&nbsp;&nbsp;&nbsp;{{formatName}}:{{formatValue}}</li>
                </ul>
            </li>
            <li>团详情：{{group.groupDetail}}</li>
            <li>团发起者手机号：{{group.groupInitiator.userPhoneNumber}}</li>
            <li>团发起者id：{{group.groupInitiatorId}}</li>
            <li>团单价：{{group.groupPrice}}</li>
            <li>团原单价：{{group.groupPriceOriginal}}</li>
            <li>团目标人数：{{group.groupTargetNumber}}</li>
            <li>团目前人数：{{group.groupNowNumber}}</li>
            <li>团邮费：{{group.groupPostage}}</li>
            <li></li>
            <li></li>
            <li>选择地址：
                <select ng-model="paramJoin.addressId" ng-options="x.addressId as x.addressInfo for x in addresses">>
                </select><a href="用户地址信息演示.html">管理用户地址</a>
            </li>
            <li><button ng-click="joinGroup()">确认参团</button></li>
        </ul>
    </fieldset>
</div>

</body>
</html>